Software Development
Working with Clojure
Clojure Data-Driven and Web Application Fundamentals
Clojure Fundamentals
Data and State Management in Clojure
Optimizing Clojure Projects

Clojure Data-Driven and Web Application Fundamentals

Course Number:
sl_jclj_a04_it_enus
Lesson Objectives

Clojure Data-Driven and Web Application Fundamentals

  • start the course
  • work with relational data in Clojure
  • use Korma with Clojure
  • use non-relational data in Clojure
  • use Compojure
  • use HTML templating in Clojure applications
  • package Clojure web apps using .WAR files
  • run Clojure web apps locally
  • deploy Clojure web apps
  • recognize how to set up Clojure web applications

Overview/Description
There are a number of specific features and tools for building and deploying Clojure web applications. In this course, you'll learn about development of basic data-driven web applications using Clojure. You'll also explore working with relational and non-relational data and using Compojure and HTML templating. You'll also learn how to deploy Clojure web applications.

Target Audience
Individuals with programming experience who wish to learn how to program using Clojure

Clojure Fundamentals

Course Number:
sl_jclj_a01_it_enus
Lesson Objectives

Clojure Fundamentals

  • start the course
  • recognize the basic features of Clojure
  • install and use Leiningen to build Clojure programs
  • recognize the basic language features of Clojure
  • describe functions in Clojure
  • use local bindings in Clojure
  • use conditional expressions in Clojure
  • use looping and recursion in Clojure
  • use tail recursion in Clojure
  • use loop in Clojure
  • work with side effects in Clojure
  • consume first class Clojure functions
  • produce first class Clojure functions
  • use partial to curry Clojure functions
  • use comp to compose Clojure functions
  • describe Clojure namespaces
  • use namespace-qualified symbols and keywords in Clojure
  • switch namespaces in Clojure
  • load Clojure namespaces from a file or stream
  • query Clojure namespaces
  • manipulate Clojure namespaces
  • make decisions involving fundamental programming concepts in a Clojure application

Overview/Description
Clojure - a dialect of Lisp - is a dynamic programming language that compiles to JVM bytecode. In this course, you'll learn the fundamentals of programming with Clojure including basic syntax and using Leiningen to build Clojure programs. You'll also learn about program flow and working with functions and namespaces.

Target Audience
Individuals with programming experience who wish to learn how to program using Clojure

Data and State Management in Clojure

Course Number:
sl_jclj_a02_it_enus
Lesson Objectives

Data and State Management in Clojure

  • start the course
  • work with strings in Clojure
  • work with numbers in Clojure
  • work with boolean values, characters, and keywords in Clojure
  • use lists in Clojure
  • use vectors in Clojure
  • use maps in Clojure
  • use sets in Clojure
  • construct sequences in Clojure
  • use lazy sequences in Clojure
  • work with Clojure sequence APIs
  • read and write Clojure metadata
  • work with Clojure metadata
  • understand how state management is implemented in Clojure
  • create and access refs in Clojure
  • update refs in Clojure
  • use atoms in Clojure
  • create and update agents in Clojure
  • handle agent errors in Clojure
  • work with agents synchronously in Clojure
  • shut down Clojure agents
  • use thread-local var bindings to change state in Clojure
  • use validators in Clojure
  • use watchers in Clojure
  • use Clojure state management features and work with data in Clojure

Overview/Description
Interacting with and managing data is an important aspect of Clojure applications. This course covers working with data in Clojure, including using primitive types and data collections. You'll also learn about state management with Clojure.

Target Audience
Individuals with programming experience who wish to learn how to program using Clojure

Optimizing Clojure Projects

Course Number:
sl_jclj_a03_it_enus
Lesson Objectives

Optimizing Clojure Projects

  • start the course
  • use multimethods in Clojure
  • use hierarchies in Clojure
  • call Java from Clojure and call Clojure from Java
  • use proxy Java classes in Clojure
  • use parallelism in Clojure
  • implement concurrency with agents in Clojure
  • use concurrency functions in Clojure
  • work with futures and promises in Clojure
  • understand how macros work in Clojure
  • work with macros in Clojure
  • implement macros in Clojure
  • work with Clojure DSLs
  • understand how protocols and datatypes work in Clojure
  • work with protocols and datatypes in Clojure
  • using profiling in Clojure projects
  • optimize Clojure functions
  • perform unit testing in Clojure projects
  • apply various techniques to optimize your Clojure code

Overview/Description
Clojure includes a number of features that enable you to optimize your applications. In this course you'll learn about optimization of Clojure projects with multimethods and hierarchies, parallelism, and macros. You'll also learn about profiling and unit testing of Clojure applications.

Target Audience
Individuals with programming experience who wish to learn how to program using Clojure

Close Chat Live